import {
    sync
} from 'vuex-router-sync';


// import swiper from '@/components/Swiper.vue';
// import cellsAutoFill from '@/components/cells_auto_fill.vue';
// import dividerLine from '@/components/divider_line.vue';
// import listBroadcast from '@/components/list_broadcast.vue';
// import listTwoType1 from '@/components/list_two_type1.vue';
// import listActionTitle from '@/components/list_action_title.vue';
// import listOneType2 from '@/components/list_one_type2.vue';
// import listOneType3 from '@/components/list_one_type3.vue';
// import horizontalScrollView from '@/components/horizontal_scroll_view.vue';

import swiper from './components/Swiper.vue';
import cellsAutoFill from './components/cells_auto_fill.vue';
import dividerLine from './components/divider_line.vue';
import listBroadcast from './components/list_broadcast.vue';
import listTwoType1 from './components/list_two_type1.vue';
import listActionTitle from './components/list_action_title.vue';
import listOneType2 from './components/list_one_type2.vue';
import listOneType3 from './components/list_one_type3.vue';
import horizontalScrollView from './components/horizontal_scroll_view.vue';

import categoryTitle from './components/category_title.vue';
import categoryGroup from './components/category_group.vue';

import App from './App.vue';
import router from './router';
import store from './store';
// import * as filters from './filters';
// import mixins from './mixins'; 

// sync the router with the vuex store.
// this registers `store.state.route`
sync(store, router);
// register global utility filters.
// Object.keys(filters).forEach(key => {
//     Vue.filter(key, filters[key]);
// });

// register global mixins.
// Vue.mixin(mixins);
Vue.component('swiper', swiper);
Vue.component('cellsAutoFill', cellsAutoFill);
Vue.component('dividerLine', dividerLine);
Vue.component('listBroadcast', listBroadcast);
Vue.component('listTwoType1', listTwoType1);
Vue.component('listActionTitle', listActionTitle);
Vue.component('listOneType2', listOneType2);
Vue.component('listOneType3', listOneType3);
Vue.component('horizontalScrollView', horizontalScrollView);

Vue.component('categoryTitle', categoryTitle);
Vue.component('categoryGroup', categoryGroup);
// create the app instance.
// here we inject the router and store to all child components,
// making them available everywhere as `this.$router` and `this.$store`.
export default new Vue(Vue.util.extend({
    el: '#root',
    router,
    store
}, App));

router.push('/');